import re
import time
#原生字符
# re_obj=re.search('jdj','kdfkjdjfdd')
# print(re_obj)   #<re.Match object; span=(4, 7), match='jdj'>
# print(re_obj.group())  #jdj

# #元字符
# #　.匹配任意1个字符（除了\n）
# print(re.search('he.', 'hex').group())
# print(re.search('cc.', 'ccx').group())
# print(re.search('dd.','d\n').group())  #匹配不到\n

# [ ]匹配[ ]中列举的字符
# print(re.search('cc[dffddfd123456]', 'cc3').group())   #cc3  在前面输出中找有没有
# print(re.search('cc[dffddfd123456]', 'ccd').group())   #ccd  在前面输出中找有没有
# print(re.search('cc[dffddfd123456]', 'cc+').group())   #不能匹配 在前面输出中找有没有
# print(re.search('dd[0-9a-zA-Z]', 'ddxxx').group())    #ddx  前面的范围中找
# print(re.search('dd[0-9a-zA-Z]', 'ddFxx').group())    #ddF  前面的范围中找
# print(re.search('dd[0-9a-zA-Z]', 'dd1030').group())      #dd1 前面的范围中找

# \d匹配数字，即0-9 = [0-9]
# print(re.search('dd\d', 'dd1030').group())  #dd1
# print(re.search('dd\d', 'dd30').group())  #dd3
# print(re.search('dd\d', 'dd030').group())  #dd0

# \D匹配非数字，即不是数字
# print(re.search('dd\D', 'dd1030').group())  #报错 不能的数字
# print(re.search('dd\D', 'ddsd').group())  #  dds
# print(re.search('dd\D', 'dd-').group())  #dd-
# print(re.search('dd\D', 'dd<>>').group())  #dd<

# \s匹配空白，即 空格，tab键
# # print(re.search('dd\s', 'dd1030').group())  # 报错  只能匹配空格
# print(re.search('dd\s', 'dd 030').group())
# print(re.search('dd\s', 'dd 1030').group())

# \w匹配非特殊字符，即 a - z、A - Z、0 - 9、_、汉字　　［a - zA - Z0 - 9  [_\u4e00 -\u9fa5］
# print(re.search('[\u4e00-\u9fa5][\u4e00-\u9fa5]', 'dskfkd大幅度').group())      #大   匹配第一个出现的2个汉字
# print(re.search('cd\w', 'cdxx').group())   #cdx
print(re.search('cd\w\w', 'cdxxx').group())   #cdxx
print(re.search('cd\w', 'cd*').group())   #cd*  不能匹配